문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 고차 함수 (문단 편집) ==== 2단계 : 고차 함수 정의 ==== 별도로 정의한 합 연산과 곱 연산에서 연산자를 제외한 공통된 부분을 고차 함수로 묶는다. {{{#!syntax cpp #include #include #include using namespace std; template int fold(const array &, const function &, const int &); int main(const int argc, const char **argv) { const array sequence = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; auto add = [](const int &value_x, const int &value_y) -> int { return value_x + value_y; }; auto multiply = [](const int &value_x, const int &value_y) -> int { return value_x * value_y; }; cout << fold(sequence, add, 0) << endl; // 55 cout << fold(sequence, multiply, 1) << endl; // 3628800 return 0; } template int fold(const array &sequence, const function &fx, const int &initial_value) { int result = initial_value; for (const int &i : sequence) { result = fx(result, i); } return result; } }}}저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기